Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- Task switch



  Concurrency vs Parallelism

Concurrency and parallelism are two related concepts which deal with executing tasks "simultaneously". From Sun's Multithreaded Programming Guide: Concurrency: A condition that exists when at least two threads are making progress. A more generalized form of parallelism that can include time-slicing as a form of virtual parallelism. Parallelism: A condition that arises when at least two threads are executing simultaneously. These two definitions are too formal to be understood easily. On t...

   Concurrency,Parallelism,Thread     2013-08-07 23:42:33

  Multitasking vs multiprogramming

As all these processing are the part of computer functions. You should not be confused between these processes.In computing, multitasking is a method by which multiple tasks are performed by the user also known as processes, share common processing resources such as a CPU. CPU is actively executing more than one task at a time. Multitasking solves the problem by scheduling the tasks instructions. Which task may be the one running at any...

   multitasking,multiprogramming,os,differe     2011-09-22 13:46:30

  A Solution to CPU-intensive Tasks in IO Loops

Back in October 2011, Ted Dziuba infamously said that Node.js is Cancer.  A provocative title to a provocative article.  The only thing it didn’t really provoke in the commentary was much thought ;)  Zing. My interpretation of the article is that Ted holds up the classic blocking-IO process-per-request (or  thread per request; same difference) model as superior.  Yet we all remember where the blocking-IO forking model got Apache in the early days.  ...

   CPU,Intensive IO loops,Solution,C++     2012-02-06 07:42:40

  A strange behavior of printing struct with nested struct in GoLang

Normally when trying to print a struct , we would use %v to show all data of the struct. It will print the default format for each field in the struct. %v the value in a default format when printing structs, the plus flag (%+v) adds field names But recently we observed a strange behavior when printing a struct with nested struct which has a String() string implemented, the %v format prints an 'unexpected' output per our understanding.   Let's see the example snippet first. pa...

   PROGRAMMING,GOLANG     2018-10-29 09:59:49

  Highly efficient PHP code writing

Next are some tips for writing highly efficient PHP codes. They are described below: 0. Use single quote to replace double quote, this will be better since PHP will serach for variables in double quoted strings. Note, only echo can do this; 1. If we can define methods of a class as static, then do it. It will increase access speed by 4 times; 2. $row["id"] is 7 times faster than $row[id]; 3. echo is faster than print, and also use echo's multiple parameter format such as echo $str1,$str2 inst...

   PHP,Code writing,High efficient,Tips     2011-07-23 12:35:50

  Pair Programming Stereotypes

Over the last couple of years, I’ve done a lot of pair programming. Pair programming inside my team, at customer sites, in coding dojos and in my open source projects. Pair programming is really a great and effective experience when performed by an pair of developers knowing how to pair program. Unfortunately, you cannot just put two developers in front of a single computer and expect them to perform perfectly from the start. Pair programming has to be learned. Both developers need to...

   Code programming,Pair gramming,Sterotype     2012-02-29 05:09:14

  What is good design?

Some quotes about good design from a Germany designer Dieter Rams in documentary "Objectified": Good design should be innovative Good design should make a product useful Good design is aesthetic design Good design will make a product understandable Good design is honest Good design is unobtrusive Good design is long-lived Good design is consistent in every detail Good design is environmentally friendly Good design is as little design as possible This brings up a question -- what...

   METRO,SIMPLICITY,GOOD DESIGN,PRINCIOPLE,UNIX PHILOSOPHY     2012-05-09 06:48:11

  Practice of using spinlock instead of mutex

Spinlock and mutex are two important concepts in multithreading programs. They are used to lock some shared resource to prevent concurrent access which may affect data consistency. But they do have differences, what are the differences? when should we use spinlock instead of mutex? The Theory In theory, when a thread tries to lock a mutex and it does not succeed, because the mutex is already locked, it will go to sleep, immediately allowing another thread to run. It will continue to sleep until...

   Spinlock,Mutex,Concurrency     2014-04-19 21:54:12

  Mac shortcut key cheatsheet

More and more people are using Mac computers or switch from Windows or other OS to MacOS, there are lots of shortcut keys which can help improve the work efficiency or ease operations. This post will try to list some commonly used shortcut keys in Mac. But before that, let's first know some common keys on a Mac computer keyboard. There are four major function keys: Command, Control, Option and Shift. Most of the shortcut keys will combine the functional key and other key. Basic Command key is t...

   SHORTCUT,SCREENSHOT,COMMAND,SHORTCUT KEY,MACOS     2019-02-05 07:13:06

  Chrome is dominating the browser world

Microsoft has announced recently that their Edge browser will abandon its own kernel and switch to use Google Chromium. This by no means indicates that Microsoft admitted it lost the war against Google on browser. For Microsoft, making such a decision is certainly not easy, but it is absolutely a wise decision. After all, the market share of both parties are not at the same competing level anymore. According to NetMarketShare's statistics, Chrome's market share in desktop world has reached 67.29...

   CHROME,CHROMIUM,EDGE     2019-02-01 08:02:53